home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / swingall.jar / javax / swing / plaf / basic / BasicMenuUI$PostAction.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-07-15  |  1.6 KB  |  50 lines

  1. package javax.swing.plaf.basic;
  2.  
  3. import java.awt.Container;
  4. import java.awt.event.ActionEvent;
  5. import java.awt.event.ActionListener;
  6. import javax.swing.JMenu;
  7. import javax.swing.JMenuBar;
  8. import javax.swing.MenuElement;
  9. import javax.swing.MenuSelectionManager;
  10.  
  11. class BasicMenuUI$PostAction implements ActionListener {
  12.    JMenu menu;
  13.    boolean force = false;
  14.  
  15.    BasicMenuUI$PostAction(JMenu var1, boolean var2) {
  16.       this.menu = var1;
  17.       this.force = var2;
  18.    }
  19.  
  20.    public void actionPerformed(ActionEvent var1) {
  21.       MenuSelectionManager var2 = MenuSelectionManager.defaultManager();
  22.       if (this.force) {
  23.          Container var3 = this.menu.getParent();
  24.          if (var3 != null && var3 instanceof JMenuBar) {
  25.             MenuElement[] var5 = this.menu.getPopupMenu().getSubElements();
  26.             if (var5.length > 0) {
  27.                MenuElement[] var4 = new MenuElement[]{(MenuElement)var3, this.menu, this.menu.getPopupMenu(), var5[0]};
  28.                var2.setSelectedPath(var4);
  29.             } else {
  30.                MenuElement[] var7 = new MenuElement[]{(MenuElement)var3, this.menu};
  31.                var2.setSelectedPath(var7);
  32.             }
  33.          }
  34.       } else {
  35.          MenuElement[] var6 = var2.getSelectedPath();
  36.          if (var6.length > 0 && var6[var6.length - 1] == this.menu) {
  37.             MenuElement[] var8 = new MenuElement[var6.length + 1];
  38.             System.arraycopy(var6, 0, var8, 0, var6.length);
  39.             var8[var6.length] = this.menu.getPopupMenu();
  40.             MenuSelectionManager.defaultManager().setSelectedPath(var8);
  41.          }
  42.       }
  43.  
  44.    }
  45.  
  46.    public boolean isEnabled() {
  47.       return this.menu.getModel().isEnabled();
  48.    }
  49. }
  50.